﻿Login = function () {

}

Login.login = function () {
    var userName = $("#username").val();
    var passWord = $("#password").val();
    var url = Editor.Url + "/login/GetAll";
    var data = {
        username: userName,
        password: passWord
    }
    $.ajax({
        url: url,
        type: "Get",
        contentType: "application/json",
        dataType: "json",
        data: data,
        cache: false,
        success: function (msg) {
            if (msg.userid > -1){
                Editor.Save(msg, Editor.login);                
                if (msg.type_id == 2){
                    location.href = Editor.Url + "/chat";
                }
                else {
                    Login.Items();
                }
            }
            else {
                alert("sai ten dang nhap hoac mat khau");
            }
        },
        error: function (err) {
            // When Service call fails
        }
    });
}

Login.isCheckLogIn = function () {
    var url = Editor.Url + "/login/isCheckLogin";
    $.ajax({
        url: url,
        type: "Get",
        contentType: "application/json",
        dataType: "json",        
        cache: false,
        success: function (msg) {
            if (msg.userid == -2) {
                location.href = Editor.Url + "/login";
            }
        },
        error: function (err) {
            // When Service call fails
        }
    });
}

Login.Items = function () {
    var url = Editor.Url + "/login/GetItems";
    $.ajax({
        url: url,
        type: "Get",
        contentType: "application/json",
        dataType: "json",
        cache: false,
        success: function (data) {
            console.dir(data);
            Editor.Save(data, Editor.items);
            location.href = Editor.Url;
        },
        error: function (err) {
            // When Service call fails
        }
    });
}

Login.Profile = function (){
    var objUser = Editor.read(Editor.login);
    var html = "";
    html = '<tr><td> Tài khoản </td>' + '<td>' + objUser.username + '</td></tr>';
    html += '<tr><td> Tên </td>' + '<td>' + objUser.fullname + '</td></tr>';
    html += '<tr><td> Điện thoại </td>' + '<td>' + objUser.phone + '</td></tr>';
    html += '<tr><td> Email </td>' + '<td>' + objUser.email + '</td></tr>';
    $("#table_info").html(html);
}

Login.DangKy = function () {
    var username = $("#user_name").val();
    var pass_word = $("#pass_word").val();
    var repass_word = $("#repass_word").val();
    var email = $("#email").val();
    var phone = $("#phone").val();
    if (pass_word != repass_word) {
        alert("Mật khẩu xác nhận không trùng nhau");
        return;
    }
    if (isExistEmail(email) == false) {
        alert("Email Không Hợp Lệ");
        return;
    }

    var item = {
        id: 1,
        user_name: username,
        pass_word: pass_word,
        email: email,
        phone: phone,
        type_id: 2,
        isdelete: false,
        islock: false,
        create_date: new Date(),
        loginend: new Date()
    }
    var url = Editor.Url + "/api/userAPI";
    $.ajax({
        url: url,
        type: "Post",
        data: JSON.stringify(item),
        contentType: "application/json",
        cache: false,
        success: function (msg) {
            if (msg.id == -3) {
                alert("Tài khoản này đã tồn tại. Xin vui lòng chọn tên khác");
                return;
            }
            else if (msg.id > 0) {
                alert("Đăng Ký Thành Công");
                location.href = Editor.Url + "/login";
            }
        },
        error: function (err) {
            // When Service call fails
        }
    });
}

function isExistEmail(email) {
    var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
    return emailPattern.test(email);
}

Login.Changpass = function () {
    var oldPass = $("#oldPass").val();
    var newPass = $("#newPass").val();
    var rePass = $("#rePass").val();
    if (newPass != rePass) {
        alert("Mật khẩu xác nhận không trùng nhau");
        return;
    }
    var objUser = Editor.read(Editor.login);
    var data = {
        userId: objUser.userid,
        oldPass: oldPass,
        newPass: newPass
    }
    var url = Editor.Url + "/login/changepass";
    $.ajax({
        url: url,
        type: "Get",
        contentType: "application/json",
        dataType: "json",
        data: data,
        cache: false,
        success: function (msg) {
            if (msg == -1) {
                alert("Mật Khẩu Cũ Không Đúng");
                return;
            }
            else if (msg == 1) {
                alert("Mật Khẩu Thay Đổi Thành Công");
            }
            else {
                alert("Có Lỗi Trong Quá Trình Thay Đổi Mật Khẩu");
            }
        },
        error: function (err) {
            // When Service call fails
        }
    });
}